Compensating Transaction
補正トランザクション / 補償トランザクション
最終的に整合性がある操作を定義する一連のステップの中で、1 つ以上のステップが失敗した場合に、実行された作業を元に戻すトランザクション
insertしたデータがupdateされているかもしれないし、単純にロールバックするのが難しい可能性がある
戻さずに失敗を記録するやり方もある
ohbarye.icon 決済のトランザクション管理術
補正トランザクションもまた失敗する可能性がある
リトライ可能なように冪等性を持つよう実装する
https://docs.microsoft.com/ja-jp/azure/architecture/patterns/compensating-transaction